home *** CD-ROM | disk | FTP | other *** search
- ┌───────────────────────────────────────────────────────────────────────────┐
- │ Mod Name: Super Color Mod Mod Author: Hackmaster 'J' 1@6101 WWIVnet │
- │ │
- │ Difficulty: Easy Date : 29JAN93 │
- │ │
- │ WWIV Version: 4.22 Filename : HJ03E.MOD (or .ZIP) │
- │ │
- │ Description: To add the basic colors to WWIV without disturbing the 0-7 │
- │ colors. What it does is add CTRL-P B-P for the extra color │
- │ in addition to the normal CTRL-P 0-7. │
- └───────────────────────────────────────────────────────────────────────────┘
- ---------------------------------------------------------------------------
- 16AUG91: Super Color Mod V1.1 release to the public
- ---------------------------------------------------------------------------
- 07SEP91: SCM Mod V1.2 Revised code for WWIV 4.20 to take into account
- extra parameters in the makeansi function
- ---------------------------------------------------------------------------
- 15AUG92: Revised code slightly and release new copy for WWIV 4.21A
- ---------------------------------------------------------------------------
- 24JAN93: Revised mod due to addition of the ESM in 4.22
- ---------------------------------------------------------------------------
- 29JAN93: Fixed bug that Capital letters didn't produce colors
- ---------------------------------------------------------------------------
-
- On with the mod....
-
- Legend = is an original line
- + is an added or changed line
- - is a deleted line
-
- ===========================================================================
- Make the following changes in COM.C
- ---------------------------------------------------------------------------
- Modify void outchr as follows...
- ---------------------------------------------------------------------------
-
- =void outchr(char c)
- =/* This function outputs one character to the screen, and if output to the
- = * com port is enabled, the character is output there too. ANSI graphics
- = * are also trapped here, and the ansi function is called to execute the
- = * ANSI codes
- = */
- ={
- = int i, i1;
- =
- = if (change_color) {
- = change_color = 0;
- = if ((c >= '0') && (c <= '7'))
- = ansic(c - '0');
- if ((c >= 'b') && (c <= 'p')) /* MOD SCM add this line */
- ansic((c - 'a')+10); /* MOD SCM add this line */
- if ((c >= 'B') && (c <= 'P')) /* MOD SCM add this line */
- ansic((c - 'A')+10); /* MOD SCM add this line */
- = return;
- = }
- = if (c == 3) {
- .
- .
- .
- ---------------------------------------------------------------------------
- Farther down still in COM.C replace void ansic with this one....
- ---------------------------------------------------------------------------
-
- /* MOD SCM */
- void ansic(int n)
- {
- char c;
-
- if ((n>=0) && (n<8)) {
- c = ((thisuser.sysstatus & sysstatus_color) ? thisuser.colors[n] :
- thisuser.bwcolors[n]);
- if (c == curatr)
- return;
- setc(c);
- makeansi((thisuser.sysstatus & sysstatus_color) ? thisuser.colors[0] :
- thisuser.bwcolors[0],endofline, 0);
- }
- if ((n>9) && (n<26)) {
- n = n - 10;
- c = ((thisuser.sysstatus & sysstatus_color) ? n : n );
- if (c == curatr)
- return;
- setc(c);
- makeansi((thisuser.sysstatus & sysstatus_color) ? n : n,endofline, 0);
- }
- }
- /* END MODIFY */
- ==========================================================================
- Make the following changes in BBSUTL.C
- --------------------------------------------------------------------------
- Modify function void inli as follows
- --------------------------------------------------------------------------
-
- = case 16: /* Ctrl-P */
- = if (cp<maxlen-1) {
- = ch=getkey();
- = if ((ch>='0') && (ch<='7')) {
- = s[cp++]=3;
- = s[cp++]=ch;
- = ansic(ch-'0');
- = }
- if ((ch>='b') && (ch<='p')) { /* MOD SCM add this line */
- s[cp++]=3; /* MOD SCM add this line */
- s[cp++]=ch; /* MOD SCM add this line */
- ansic((ch-'a')+10); /* MOD SCM add this line */
- } /* MOD SCM add this line */
- if ((ch>='B') && (ch<='P')) { /* MOD SCM add this line */
- s[cp++]=3; /* MOD SCM add this line */
- s[cp++]=ch; /* MOD SCM add this line */
- ansic((ch-'A')+10); /* MOD SCM add this line */
- } /* MOD SCM add this line */
- = }
- = break;
- = case 9: /* Tab */
- ===========================================================================
- Make the following changes in MSGBASE.C
- ---------------------------------------------------------------------------
- add this function void scm before function void inmsg
- ---------------------------------------------------------------------------
-
- /* MOD Scm */
- void scm(void)
- {
- pl("Ctrl-P 0 Ctrl-P 1 Ctrl-P 2 Ctrl-P 3 Ctrl-P 4 Ctrl-P 5 Ctrl-P 6 Ctrl-P
- 7");
- pl("Ctrl-P b Ctrl-P c Ctrl-P d Ctrl-P e Ctrl-P f Ctrl-P g Ctrl-P h Ctrl-P
- i");
- pl("Ctrl-P j Ctrl-P k Ctrl-P l Ctrl-P m Ctrl-P n Ctrl-P o Ctrl-P p");
- }
- /* END MODIFY */
-
- ---------------------------------------------------------------------------
- Make the following changes to function void inmsg
- ---------------------------------------------------------------------------
-
- =void inmsg(messagerec *m1, char *title, int *anony, int needtitle, char *aux,
- int fsed)
- ={
- .
- .
- .
- = if (stricmp(s,"/HELP")==0) {
- = savel=0;
- = printmenu(2);
- = }
- + if (stricmp(s,"/CL")==0) {
- + savel=0;
- + scm();
- + }
- = if (stricmp(s,"/LI")==0) {
- .
- .
- .
-
- ---------------------------------------------------------------------------
- Optional: Edit String 628 as below to bring attention to the colors....
-
- "Enter '/HELP' for help, or type '/CL' for extended color list."
-
- ---------------------------------------------------------------------------
-
- Thats it. You should now have all the available colors by press CTRL-P b-p as
- well as still having the original WWIV colors 0-7. Remember before you
- compile type MAKE FCNS to add the extra function void scm to FCNS.H.
-
- PS. This Mod works great with WWIVEdit V2.5 just edit the colors line in
- DEFAULT.DEF and LOCAL.DEF as below:
-
- =TAG: [N] Disable User Tag Lines (if 1)
- =BBSTAG: [N] Disable BBS Tag (if 1)
- +COLORS: [0-7,b-p,B-P] Legal Color Range (See CONFIG.DOC for format)
- =MCI: [] Characters treated as MCI chars as per Merlin's Mod
-
- Hackmaster 'J' 1@6101 WWIVnet
-
-
-
-